Data storage systems are often used to record data onto or to reproduce data from a storage media. One type of storage media includes a rotating magnetic disk where a magnetic head of the data storage system can read and write data in tracks on a surface of the disk, such as in a Hard Disk Drive (HDD). Another type of storage media can include a solid-state memory where cells are charged to store data.
Since data can generally be accessed quicker from a solid-state memory than from a disk, some data storage systems may temporarily store or cache certain data that is already stored on a disk in a solid-state memory. A host requesting the cached data can then usually retrieve the cached data quicker than if the data was retrieved from the disk due to a seek time in moving the head to a particular location on the disk.
The determination of which data to cache in the solid-state memory can be made based on a read caching policy that may, for example, cache data that is frequently accessed or has been more recently accessed. Since the storage capacity and life of solid-state memory is typically limited, there is a need to make efficient use of such solid-state memory while still providing for a quick performance of read commands.